package br.com.locanet.service.impl;

import javax.persistence.PersistenceException;

import br.com.locanet.bean.impl.FilmeLocacao;
import br.com.locanet.dao.database.impl.FilmeLocacaoDAO;
import br.com.locanet.exception.ExceptionList;
import br.com.locanet.service.AbstractEntityService;

public class FilmeLocacaoService extends
		AbstractEntityService<FilmeLocacao, FilmeLocacaoDAO>{

	@Override
	public void doValidateBusinessRules(FilmeLocacao entity)
			throws ExceptionList, PersistenceException, ClassNotFoundException {
		
	}
	
	@Override
	public FilmeLocacao doMerge(FilmeLocacao entity) throws PersistenceException {
		FilmeLocacao oldEntity = selectById(entity);
			
		if (entity.getFilme()!=null&&entity.getFilme().getId()!=null)
			oldEntity.setFilme(entity.getFilme());
		if (entity.getCliente()!=null&&entity.getCliente().getId()!=null)
			oldEntity.setCliente(entity.getCliente());
		if (entity.getFuncionario()!=null&&entity.getFuncionario().getId()!=null)
			oldEntity.setFuncionario(entity.getFuncionario());
		if (entity.getDataLocacao()!=null)
			oldEntity.setDataLocacao(entity.getDataLocacao());
		if (entity.getDataDevolucao()!=null)
			oldEntity.setDataDevolucao(entity.getDataDevolucao());
		if (entity.getPreco()!=null)
			oldEntity.setPreco(entity.getPreco());
		if (entity.getStatusPagamento()!=null)
			oldEntity.setStatusPagamento(entity.getStatusPagamento());
			
		return oldEntity;
	}
	
}
